package foodmaterial.dao;

import foodmaterial.dto.OriginalProcessRateDto;
import foodmaterial.entity.*;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface InitDao {
    /**
     * 新增公司数据库信息
     * @param companyDatabase
     * @return
     */
    int insertCompanyDatabase(CompanyDatabase companyDatabase) ;

    /**
     * 修改公司数据库信息
     * @param companyDatabase
     * @return
     */
    int updateCompanyDatabase(CompanyDatabase companyDatabase) ;

    /**
     * 查询全部公司的数据库信息
     * @return
     */
    List<CompanyDatabase> selectCompanyDatabase() ;

    CompanyDatabase selectCompanyDatabaseByDb(String db) ;

    int updateSysParams(SysParams sysParams) ;

    List<SysParams> selectSysParams() ;

    SysParams selectSysParamsByCode(String code) ;

    List<SysParams> selectSysParamsByCodes(List<String> where) ;

    /**
     * 选择公司已经具有的功能
     * @return
     */
    List<SysPermission> selectCompanyFun() ;

    int insertDefaultRole(List<SysRole> sysRoles) ;

    int insertDefaultRolePermission(List<RolePermissionRelation> rolePermissionRelations) ;

    //取最近使用
    List<FoodMaterial> selectRecentlyOriginalProcessRate(OriginalProcessRateDto dto) ;

    //随机从200个中抽取
    List<FoodMaterial> selectRandomOriginalProcessRate(OriginalProcessRateDto dto) ;

}